%%% $Id: abis_emulator_app.erl 119 2005-08-12 14:33:38Z vances $
%%%---------------------------------------------------------------------
%%% @copyright 2004,2005 Motivity Telecom Inc.
%%% @end
%%%
%%% Copyright (c) 2004,2005 Motivity Telecom Inc.
%%% All rights reserved.
%%%
%%% Redistribution and use in source and binary forms, with or without
%%% modification, are permitted provided that the following conditions
%%% are met:
%%%       - Redistributions of source code must retain the above
%%%         copyright notice, this list of conditions and the following
%%%         disclaimer.
%%%       - Redistributions in binary form must reproduce the above
%%%         copyright notice, this list of conditions and the following
%%%         disclaimer in the documentation and/or other materials 
%%%         provided with the distribution.
%%%       - Neither the name of Motivity Telecom Inc. nor the names of
%%%         its contributors may be used to endorse or promote products
%%%         derived from this software without specific prior written
%%%         permission.
%%%
%%% THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
%%% "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
%%% LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
%%% FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
%%% COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
%%% INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
%%% BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
%%% LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
%%% CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 
%%% LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
%%% ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
%%% POSSIBILITY OF SUCH DAMAGE.
%%%---------------------------------------------------------------------
%%%
%%% @author Vance Shipley <vances@motivity.ca> [http://www.motivity.ca]
%%%
%%% @doc Application callback module for the abis_emulator application.
%%%	<p>The abis_emulator application provides a simple way to 
%%% 	recreate a GSM Abis protocol session.  The purpose of this
%%% 	application is to create an test environment for probe 
%%% 	development.</p>
%%% @end
%%%
%%% @reference <a href="index.html">The LAPD User's Guide</a>
%%%
%%% @private
%%%
-module(abis_emulator_app).
-copyright('Copyright (c) 2004,2005 Motivity Telecom Inc.').
-author('vances@motivity.ca').
-vsn('$Revision: 119 $').
-behaviour(application).
-export([start/2, stop/1]).

start(normal, _Args) ->
	{ok, NAServers} = application:get_env(na_servers),
	{ok, AbisLinks} = application:get_env(abis_links),
	LinkArgs = parse_links(AbisLinks, []),
	StartArgs = [{netaccess, NAServers}] ++ LinkArgs,
	supervisor:start_link(abis_emulator_sup, StartArgs).
	
parse_links([{BSCSpec, BTSSpec, Script, TEIs}|T], Acc) ->
	parse_links(T, [{abis, [BSCSpec, BTSSpec, {teis, Script, TEIs}]}|Acc]);
parse_links([], Acc) ->
	lists:reverse(Acc).
	
stop(_State) -> ok.

